var http = require('http')
var fs = require('fs')
var url = require('url')
var port = process.argv[2]

if(!port){
    console.log('指定端口不会吗？\nnode server.js 8888 不就好了？')
    process.exit(1)
}

var server = http.createServer(function(request,response){
    var parsedUrl = url.parse(request.url,true)
    var pathWithQuery = request.url
    var queryString = ''
    if(pathWithQuery.indexOf('?') >= 0 ){
        queryString = pathWithQuery.substring(pathWithQuery.indexOf('?'))
    }
    var path = parsedUrl.pathname
    var query = parsedUrl.query
    var method = request.method

    console.log('有个智障发请求过来啦！路径（带查询参数） 为：' + pathWithQuery)

    response.statusCode = 200
    //默认首页
    const filePath = path === '/'? '/index.html' : path
   const index = filePath.lastIndexOf('.')
   //suffix是后缀
   const suffix = filePath.substring(index)
   const fileTypes = {
       '.html':'text/html',
       '.css':'text/css',
       '.js':'text/javascript',
       '.png':'image/png',
       '.jpg':'image/jpeg'
   }
   response.setHeader('Content-Type',
     `${fileTypes[suffix] || 'text/html'};charset=utf-8`
   )
   let content
   try{
       content = fs.readFileSync(`./public${filePath}`)
   }catch(error){
       content = '文件不存在'
       response.statusCode = 404
   }
   response.write(content)
   response.end()

})

server.listen(port)
console.log('监听' + port + '成功\n请在空中转体一万度然后用冰箱打开 http://localhost:' + port)